package com.xinqi.modules.stats.studyanalysis.service.impl;

import com.xinqi.common.mybatis.data.service.impl.BaseServiceImpl;
import com.xinqi.modules.stats.studyanalysis.domain.CourseAnalysisEntity;
import com.xinqi.modules.stats.studyanalysis.mapper.CourseAnalysisMapper;
import com.xinqi.modules.stats.studyanalysis.service.CourseAnalysisService;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;

import java.util.Objects;

/**
 * 生成统计汇总信息
 * @author dzy
 */
@Service
@RequiredArgsConstructor
public class CourseAnalysisServiceImpl extends BaseServiceImpl<CourseAnalysisMapper, CourseAnalysisEntity> implements CourseAnalysisService {

    /**
     * 删除生成统计数据
     * @description 目前：定时时间 每晚12点生成一次
     * @Author dzy
     */
    @Override
    public void clearAnalysis(){
        // 删除已生成数据
        this.baseMapper.clearCourseAnalysisList();
    }

    /**
     * 生成统计汇总信息
     * @author dzy
     */
    @Override
    public void createAnalysis(Long classId) {
        // 删除已有数据
        this.baseMapper.clearCourseAnalysisListByClassId(classId);
        // 重新生成汇总数据
        CourseAnalysisEntity entity = this.baseMapper.courseAnalysisList(classId);
        if (Objects.nonNull(entity)) {
            this.save(entity);
        }
    }

}
